package cn.iocoder.yudao.module.project.controller.admin.kismaterielexwarehousehistory.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

@Schema(description = "管理后台 - 物料出库单历史数据新增/修改 Request VO")
@Data
public class KisMaterielExWarehouseHistorySaveReqVO {

    @Schema(description = "历史出库单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "4540")
    private String id;

    @Schema(description = "订单编号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "订单编号不能为空")
    private String orderCode;

    @Schema(description = "出库单号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "出库单号不能为空")
    private String exCode;

    @Schema(description = "型号", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    @NotEmpty(message = "型号不能为空")
    private String type;

    @Schema(description = "当前出库单当前型号的出库数量", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "当前出库单当前型号的出库数量不能为空")
    private Integer exNum;

    @Schema(description = "操作员")
    private String operator;

    @Schema(description = "出库时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "出库时间不能为空")
    private LocalDateTime exTime;

    @Schema(description = "备注", example = "随便")
    private String remark;

    @Schema(description = "出库单状态（0正常 1作废）")
    private Integer status;

}